Item recommendation method based on user intention in session and system thereof

ABSTRACT

The present disclosure provides an item recommendation method and system based on a user intention in a session. In this method, a current session is encoded by use of items of prior time sequence and the last item so as to generate an accurate session representation which is then used to perform initial item prediction as a user intention. Afterwards, an intention-guided neighbor detector is used to locate an accurate neighbor session. Finally, the current session and the neighbor session representations are combined adaptively by a gated mixed layer to generate the final item recommendation, so as to effectively improve the accuracy of item recommendation.

CROSS-REFERENCE TO RELATED APPLICATION

This application claims priority from the Chinese patent application 202010450417.3 filed May 25, 2020, the content of which are incorporated herein in the entirety by reference.

TECHNICAL FIELD

The present disclosure relates to the field of content recommendation technologies, and in particular to an item recommendation method based on a user intention in a session and a system thereof.

BACKGROUND

The current item recommendations based on session contents mainly refer to item recommendations made based on anonymous user sessions. In order to improve the accuracy of performing item recommendations based on anonymous sessions, the researches already perform item recommendations using collaborative information from a neighbor session of the current session.

However, in the prior art, researches usually directly select some sessions closer to the current session as candidate neighbor sessions. In this selection process, the neighbor sessions are collected and identified according to only a cosine similarity without considering the user intention of the sessions. Thus, the most relevant neighbor cannot be identified to obtain the effective neighbor representation, thereby affecting the accuracy of item recommendation. In addition, in the existing item recommendation model, no modeling is performed for time sequence signals and latest interests of the current session at the same time, that is, item recommendation is not performed according to a long-term preference and a current interest of the user in the current session, resulting in low recommendation accuracy. Further, the existing recommendation method cannot perform modeling for the time sequence signals and the latest interests in the current session at the same time, which is not helpful to the accuracy of item recommendation.

SUMMARY

In view of this, the present disclosure provides an item recommendation method based on a user intention in a session and a system thereof, so as to solve the existing problem of low accuracy of performing item recommendations based on the collaborative information of neighbor session.

Provided is an item recommendation method based on a user intention in a session, configured to predict an item that a user is likely to interact at a next moment from an item set as a target item to be recommended to the user, and comprising:

obtaining a current session representation by encoding a current session based on a trained recommendation model;

obtaining a user intention in the current session according to the current session representation;

obtaining a corresponding neighbor session representation by identifying a neighbor session of the current session from a plurality of sessions occurring before the current session according to the user intention;

obtaining and recommending the target item to the user according to the current session representation and the neighbor session representation.

Preferably, obtaining the current session representation by encoding the current session based on the trained recommendation model includes:

obtaining an item embedding vector by embedding each item in the current session to one d-dimension vector, and taking an item embedding vector corresponding to the last item in the current session as a current interest of the user in the current session;

obtaining a hidden state vector of the item according to the item embedding vector, and taking a hidden state vector corresponding to the item embedding vector corresponding to the last item in the current session as a long-term preference of the user in the current session;

obtaining the current session representation by connecting the current interest and the long-term preference.

Preferably, the hidden state vector is obtained by allowing a gate recurrent unit (GRU) to act on the item embedding vector.

Preferably, obtaining the user intention in the current session according to the current session representation includes:

generating a prediction score of each item in the item set as the target item according to the current session representation;

sorting items in the item set in a descending order according to the corresponding prediction scores, and selecting a vector formed by a plurality of items ranked top in the item set as the user intention in the current session.

Preferably, obtaining the corresponding neighbor session representation by identifying the neighbor session of the current session from a plurality of sessions occurring before the current session according to the user intention includes:

forming a session memory by collecting session representations of a plurality of sessions occurring before the current session and corresponding target item;

forming a to-be-identified neighbor session representation by searching out each session representation corresponding to the target item identical to one of items in the user intention in the session memory according to the user intention;

sorting various session representations in the to-be-identified neighbor session representation according to the order of the items in the user intention;

forming a candidate neighbor session of the current session by selecting a plurality of session representations ranked top in the sorted to-be-identified neighbor session representation;

calculating a similarity between each session in the candidate neighbor session and the current session, and selecting a plurality of sessions ranked top in similarity in the candidate neighbor session as each neighbor session of the current session;

calculating a weight sum of various neighbor sessions as the neighbor session representation.

Preferably, the session memory is updated according to a first-in-first-out mechanism.

Preferably, obtaining and recommending the target item to the user according to the current session representation and the neighbor session representation includes:

obtaining a preference of the user by adaptively integrating the current session representation and the neighbor session representation using a gated mixed layer;

recommending the target item to the user by obtaining the target item according to the preference.

Preferably, before the current session representation is obtained by encoding the current session based on the trained recommendation model, the method further includes training the recommendation model using a back propagation algorithm.

Preferably, a parameter of the recommendation model is learned by using a cross entropy function as an optimization target.

Provided is an item recommendation system based on a user intention in a session, configured to predict an item that a user is likely to interact at a next moment from an item set as a target item to be recommended to the user, and comprising a session encoder, an intention generator, an intention-guided neighbor detector and a preference integrator.

The session encoder is configured to obtain a current session representation by encoding a current session.

The intention generator is configured to generate a user intention in the current session according to the current session representation.

The intention-guided neighbor detector is configured to obtain a corresponding neighbor session representation by identifying a neighbor session of the current session from a plurality of sessions occurring before the current session according to the user intention.

The preference integrator is configured to obtain a preference of the user by integrating the current session representation and the neighbor session representation, and predict a next item that the user is likely to interact from the item set as the target item to be recommended to the user according to the preference.

Therefore, in the item recommendation method based on a user intention in a session and a system thereof in the present disclosure, the current session is encoded by use of items of prior time sequence and the last item so as to generate an accurate session representation which is then used to perform initial item prediction as the user intention. Afterwards, the intention-guided neighbor detector is used to locate an accurate neighbor session. Finally, the current session and the neighbor session representations are combined adaptively by the gated mixed layer to generate the final item recommendation, so as to effectively improve the accuracy of item recommendation.

BRIEF DESCRIPTIONS OF THE DRAWINGS

FIG. 1 is a block diagram of an item recommendation model based on a user intention in a session according to the present disclosure.

FIG. 2 is a schematic diagram of a comparison result of two reference models CSRM and SR-GNN and a recommendation model of the present disclosure based on a variation model of the present disclosure in terms of Recall@20 index on YOOCHOOSE dataset.

FIG. 3 is a schematic diagram of a comparison result of two reference models CSRM and SR-GNN and a recommendation model of the present disclosure based on a variation model of the present disclosure in terms of MRR@20 index on YOOCHOOSE dataset.

FIG. 4 is a schematic diagram of a comparison result of two reference models CSRM and SR-GNN and a recommendation model of the present disclosure based on a variation model of the present disclosure in terms of Recall@20 index on DIGINETICA dataset.

FIG. 5 is a schematic diagram of a comparison result of two reference models CSRM and SR-GNN and a recommendation model of the present disclosure based on a variation model of the present disclosure in terms of MRR@20 index on DIGINETICA dataset.

DETAILED DESCRIPTIONS OF EMBODIMENTS

The technical solution of the examples of the present disclosure will be fully and clearly described below in combination with the accompanying drawings of the examples of the present disclosure. Apparently, these described examples are merely some of the examples of the present disclosure rather than all examples. Other examples made by those skilled in the art based on these examples without paying creative work all fall within the scope of protection of the present disclosure. It should be further noted that “the” in the detailed embodiments of the present disclosure only refers to technical belonging and features in the present disclosure. Further, it should be noted that the regular or italic fonts of the same numerals in the present disclosure refer to the same parameter, for example, the regular font S_(t) and its italic S_(t) both refer to the current session.

The main purpose of an item recommendation based on session contents is to predict a next item in which a user is likely to be interested from an item set V_(t)={v₁, v₂, . . . , v_(|v|)} according to a current session and recommend it as a target item to the user. For example, the item set is V_(t)={v₁, v₂, . . . , v_(|v|)}, a current session is denoted as S_(t), and the current session S_(t) is a session S_(t)={s₁, s₂, . . . , s_(n)} formed by n items at a time stamp t. In this case, the next item that the user is likely to interact is predicted as s_(n+1) from the session. In order to improve the accuracy of performing item recommendation based on session contents, we considers a user intention in the current session in building a recommendation model, so as to more accurately identify a neighbor session of the current session according the user intention and perform item recommendation according the current session and the neighbor session. Thus, we provide an item recommendation method based on a user intention in a session, in which a next item that a user is likely to interact is predicted from an item set as a target item to be recommended to the user. The method is mainly performed by a recommendation model shown in FIG. 1 but not limited to implementation by the model shown in FIG. 1. FIG. 1 is an item recommendation model based on a user intention in a session. A system run by the item recommendation model shown in FIG. 1 is an item recommendation system based on a user intention in a session.

The item recommendation method based on a user intention in a session according to the present disclosure mainly includes the following steps performed by a trained item recommendation model (the recommendation model shown in FIG. 1).

At step 1, a current session representation is obtained by encoding a current session.

We denote a current session received by the recommendation model as S_(t), and the current session S_(t) is a session S_(t)={s₁, s₂, . . . , s_(n)} formed by n items at a time stamp t, where s_(i)(1≤i≤n) refers to the i-th item at the time stamp t in the session S_(t). The session S_(t) is an expression of a vector, and thus s, is the i-th component of the session vector. When the recommendation model receives the current session S_(t), the current session S_(t) is encoded in the following main manner embedding each item s_(i) in the session S_(t) to a d-dimension vector to convert it into an item embedding vector x_(i), x_(i)∈Rd, x_(i) is the i-th component of X_(t), X_(t)={x₁, x₂, . . . , x_(n)} which is an item embedding vector set formed by various item embedding vectors. Considering the last item s_(n) reflects the latest interaction of the user, we directly select the last component x_(n) (the item embedding vector corresponding to the last item in the current session) after obtaining the item embedding vector set X_(t) to represent a current interest Z_(t) ^(recent) of the user in the current session. Thus, the current interest can be expressed in the following formula (1)

Z _(t) ^(recent) =x _(n)  (1)

In order to capture a time sequence signal in the session, we may obtain a hidden state h, of the item s, by use of a gated recurrent unit (GRU) in the item embedding vector set X_(t)={x₁, x₂, . . . , x_(n)}, where the main formula for obtaining the h, is as follows:

h _(i) =GRU(x _(i) ,h _(i-1))  (2)

Various hidden states h_(i) form a hidden state vector set H_(t)={h₁, h₂, . . . , h_(n)}. We take the last component h_(n) (a hidden state vector corresponding to the item embedding vector corresponding to the last item in the current session) in the hidden state vector set H_(t) as a long-term preference Z_(t) ^(globd) of the user. Therefore, the long-term preference may be expressed in the following formula (3):

Z _(t) ^(globd) =h _(n) =GRU(x _(n) ,h _(n−1))  (3)

In order to completely use the current interest Z_(t) ^(recent) and the long-term preference Z_(t) ^(globd) of the user in the current session, we finally obtain a representation Z_(t) ^(crrent) of the current session by connecting the current interest Z_(t) ^(recent) and the long-term preference Z_(t) ^(globd). The session representation may be expressed in the following formula (4):

Z _(t) ^(crrent) =W ₀[Z _(t) ^(globd) ·Z _(t) ^(recent)]  (4)

In the above formula (4), [·] refers to a connection operation, and W₀∈R^(d×2d) is used for linear projection.

At step 2, a user intention in the current session is obtained according to the current session representation.

Generating the user intention according to the current session representation includes the following step 21.

At step 21, firstly, a prediction score of each item to be recommended to the user in the item set V as a next target item in which the user is likely to be interested is calculated according to the current session representation in the following calculation formula (5):

ŷ _(t) ¹=soft max(z _(t) ^(currentT) X)  (5)

In the above formula, X is an embedding vector formed after all candidate items in the item set V are embedded into one d-dimension vector respectively to be converted into embedded items, ŷ_(t) ¹∈R^(|V|) corresponds to a prediction score of each item v_(i)∈V,Z_(t) ^(crrentT) is a transpose matrix of Z_(t) ^(crrent). The higher prediction score means a higher probability that the corresponding item is recommended as the target item. Then, we sort all items in the item set in a descending order according to the prediction scores, and select a vector Q_(t) formed by K items ranked top in the item set as a user intention of the current session. The user intention Q_(t) may be expressed in the following formula:

Q _(t) ={q ₁ ,q ₂ , . . . ,q _(k)}

In the above formula, q_(i) is the i-th item of the K items selected in the above sorting process.

At step 3, a corresponding neighbor session representation is obtained by identifying a neighbor session of the current session from a plurality of session occurring before the current session according to the user intention.

In a given session, item presentation will be repeated in the interaction process until the user needs are satisfied. Thus, the target item corresponding to the session may implicitly represent the intention of the user. Therefore, after the after current session St is given, we may firstly collect the presentations of L₀ sessions occurring before the current session in sequence and their corresponding target item so as to form a session memory M_(t) ⁰, i.e. M_(t) ⁰{(m_(t-L) ₀ ⁰,g_(t-L) ₀ ), . . . , (m_(t-1) ⁰,g_(t-1))}. M_(t) ⁰ and g_(i) (t−L₀≤i≤t−1) represent the representation of the session S_(t) and the corresponding target item. The session memory M_(t) ⁰ is updated according to a first-in-first-out mechanism to ensure the latest L₀ sessions before the current session S_(t) can be accommodated. Then, we attempt to construct a neighbor session representation by selecting a sub-set from the M_(t) ⁰. This process includes two stages, i.e. an intention-guided search stage and a neighbor representation stage which are detailed below.

In the intention-guided search stage, we aim to search out a session representation corresponding to the target item identical to one of items in the user intention in the given session memory M_(t) ⁰, so as to form a to-be-identified neighbor session representation M_(t) ¹. That is, in the search process, if the target item in the session memory appears in the user intention Q_(t), the session representation corresponding to the target item is selected as one to-be-identified neighbor session representation M_(t) ¹ which is expressed in the following formula (6):

M _(t) ¹ ={m ₁ ⁰ |g _(i) =q _(k) ,t−L ₀ ≤i≤t−1,1≤k≤K}  (6)

Next, we re-sort the to-be-identified neighbor session representations M_(t) ¹ as {m₁ ₁ , m₂ ₁ , . . . , m_(L) ₁ ¹} according to the order of items in the user intention Q_(t) where L₁ represents a number of sessions searched. Next, we select the representations of the first L₂ sessions in the M_(t) ¹ as a candidate neighbor session representation M_(t) ² of the current session St, where

After the candidate neighbor M_(t) ² is generated, we calculate a cosine similarity of each session representation m_(j)∈M_(t) ² and the current session representation z_(t) ^(current) in the following formula (7) in order to determine a relevance degree of each candidate neighbor session and the current session St.

$\begin{matrix} {{si{m\left( {z_{t}^{current},m_{j}^{2}} \right)}} = \frac{z_{t}^{current}m_{j}^{2}}{{z_{t}^{current}} \times {m_{j}^{2}}}} & (7) \end{matrix}$

Next, various candidate neighbor session representations are sorted based on the similarity and L₃ most similar session representations are selected as the final neighbor representations M_(t) ³ of the current session S_(t). which is represented as M_(t) ³={m₁ ³, m₂ ³, . . . m_(L) ₃ ³}. Next, we calculate a weight sum of these neighbor session representations in the following formula (8):

$\begin{matrix} {{z_{t}^{neighbor} = {\sum\limits_{r = 1}^{L_{3}}{w_{r}m_{r}^{3}}}},{1 \leq r \leq L_{3}}} & (8) \end{matrix}$

In the above formula, m_(r) ³ is a representation of the r-th neighbor session of M_(t) ³, Z_(t) ^(neighbor) refers to a neighbor representation corresponding to S_(t), the weight w_(r) may be obtained in the following formula (9).

w _(r)=soft max(sim(Z _(t) ^(recurrent) ,m _(r) ³))  (9)

sim(·) herein refers to a similarity calculated in the formula (7).

At step 4, the target item is obtained and recommended to the user according to the current session representation and the neighbor session representation.

After the current session representation Z_(t) ^(current) is obtained by the formula (4) and the neighbor session representation Z_(t) ^(neighbor) is obtained by the formula (8), we selectively (adaptively) integrate them by use of the gated mixed layer to represent a preference u, of the user with its expression formula (10) as follows:

u _(t) =f _(t) z _(t) ^(current)+(1−f _(t))Z _(t) ^(neighbor)  (10)

f_(t) in the formula (10) may be obtained by the formula (11):

f _(t)=σ(W ₁ Z _(t) ^(current) +W ₂ z _(t) ^(neighbor))  (11)

σ in the formula (11) is a sigmoid activation function, and W₁, W₂∈R^(d×d) is a trainable parameter. After obtaining the preference of the user by integrating the current session representation and the neighbor session representation, we obtain and recommend the target item to the user according to the preference of the user. Specifically, the manner in which the target item is recommended according to the preference is similar to the manner in which the user intention is obtained according to the current session, that is, two steps are required: firstly the prediction score of each item in the item set is calculated in the following formula (12) similar to the formula (5):

ŷ _(t) ²=soft max(u _(t) ^(T) X)  (12)

After the prediction scores are obtained, the item with the highest prediction score will be recommended to the user as the target item.

In order to train the recommendation model, we learn the parameter of the recommendation model by using the cross entropy function as an optimization target, with the specific formula (13) below:

$\begin{matrix} {{L\left( {\hat{y}}_{t}^{2} \right)} = {{- {\sum\limits_{l = 1}^{V}{y_{l}{\log\left( {\overset{\hat{}}{y}}_{l} \right)}}}} + {\left( {1 - y_{l}} \right){\log\left( {1 - {\overset{\hat{}}{y}}_{l}} \right)}}}} & (13) \end{matrix}$

y_(t) and ŷ_(t) herein are one-hot encoding of real purchase and the i-th component of ŷ_(t) ². That is, if an item v_(t) is a target item in a given session, y_(l)=1 otherwise, y_(l)=0. Before steps 1 and 4 are performed using the recommendation model shown in FIG. 1, we also train the recommendation model by using a back propagation algorithm (BPTT).

In addition, the present disclosure provides an item recommendation system based on a user intention in a session for performing the recommendation method provided in the present disclosure. As shown in FIG. 1, the item recommendation system includes a session encoder, an intention generator, an intention-guided neighbor detector, and a preference integrator. The session encoder is configured to obtain a current session representation by encoding a current session. The intention generator is configured to generate a user intention in the current session according to the current session representation. The intention-guided neighbor detector is configured to obtain a corresponding neighbor session representation by identifying a neighbor session of the current session from a plurality of sessions occurring before the current session according to the user intention. The preference integrator is configured to obtain a preference of the user by integrating the current session representation and the neighbor session representation, and predict a next item that the user is likely to interact from an item set as the target item to be recommended to the user according to the preference. The preference integrator further includes a gated mixing module and a recommending module, where the gated mixing module is configured to integrate the current session representation and the neighbor session representation, and the recommending module is configured to recommend the target item to the user according to the integrated current session representation and neighbor session representation.

In order to verify the effectiveness and recommendation accuracy of the recommendation method and system based on a user intention in a session in the present disclosure, we perform evaluation for the item recommendation method and system of the present disclosure on two reference datasets YOOCHOOSE and DIGINETICA, where the statistic data of the YOOCHOOSE and DIGINETICA datasets are shown in Table 1.

TABLE 1 DATA YOOCHOOSE DIGINETICA CLICK 557,248 982,961 TRAINING SESSOIN 369,859 719,470 TEST SESSION 55,898 60,858 ITEMS 16,766 43,097 AVERAGE SESSION LENGTH 6.16 5.12

We compare the item recommendation model ICM-SR in the method of the present disclosure with nine existing competitive reference models, including: three traditional models S-POP, Item-KNN^(]) and FPMC; four neural models based on a current session, GRU4REC, NARM, STAMP and SR-GNN; and two neighbor enhancement methods RNN-KNN and CSRM. Further, we obtain a variation model based on the recommendation model of the method of the present disclosure, replace the session encoder in FIG. 1 with NARM to form a variation model ICM-SR-NARM of the present disclosure and perform comparison together with the variation of the present disclosure. We perform test with 1/64 of the entire dataset of YOOCHOOSE. Specifically, we randomly select 10% of a training set as a verification set for parameter tuning. We adopt Adam as an optimizer with an initial learning rate set to 0.001, which attenuates by 0.1 for every three cycles. The batch size and L2 regularization are set to 100 and 10⁻⁵ respectively. The size L₁ of the session memory is set to 10000 consistent with CSRM. In the present disclosure, K is set to 50, and the numbers of the candidate neighbors and the final neighbors are L₂ and L₃ which are set to 1000 and 100 respectively. We perform evaluation comparison for the recommendation effects of the models involved in the comparison by using Recall@N and MRR@N, with the comparison result shown in FIG. 2, where N is set to 20 in the test. The optimal reference model and the optimal models in each column are marked with underlines and bolds. The differences between ICM-SR and the optimal reference model and between ICM-SR and ICM-SR-NARM are detected and determined by using t.

TABLE 2 YOOCHOOSE DIGINETICA Method Recall@ 20 MRR@ 20 Recall@ 20 MRR@20 S-POP 30.44 18.35 21.06 13.68 Item-KNN 51.60 21.81 35.75 11.57 FPMC 45.62 15.01 31.55  8.92 GRU4REC 60.64 22.89 29.45  8.33 NARM 68.32 28.63 49.70 16.17 STAMP 68.74 29.67 45.64 14.32 SR-GNN 70.57 30.94 50.73 17.59 RNN-KNN 63.77 25.22 48.06 16.95 CSRM 69.85 29.71 51.69 16.92 Variation 70.52 30.67 52.04 17.48 model of the present disclosure Recommendation  71.11_(Δ) ^(▴)  31.23_(Δ) ^(▴)  52.32_(Δ) ^(▴)  17.74_(Δ) ^(▴) model of the present disclosure

As shown in Table 2, each reference model involved in the comparison achieves the best effect basically. Except for S-PoP, CSRM performs best in terms of Recall@20 index of DIGINETICA for the following reason: SR-GNN uses GGNN to model a transfer relationship, which helps to generate an accurate representation of the current session. Thus, in the subsequent tests, we will adopt CSRM and SR-GNN as reference models.

In the subsequent test, we focus on the recommendation model and the variation model of the present disclosure. Generally, the recommendation model of the present disclosure achieves the best effect in terms of Recall@20 and MRR@20 indexes on the two datasets. In addition, we can see that the recommendation model of the present disclosure is superior to the variation model of the present disclosure, which indicates that the session encoder proposed in our framework is capable of generating a more accurate session representation than NARM. Compared with the variation model of the present disclosure, the recommendation model of the present disclosure has the increases of 0.84% and 0.54% in terms of Recall@20 on YOOCHOOSE and DIGINETICA respectively and has the increases of 1.86% and 1.48% in terms of MRR@20 respectively, which indicates that the session encoder proposed by us is capable of ranking the target item higher in the recommendation list by modeling the time sequence signals and latest interests in the current session. Compared with CSRM, the variation model of the present disclosure adopting a different neighbor selection strategy has a better performance for the following reason: the intention-guided neighbor detector is capable of selecting a more relevant neighbor session to enhance the representation of the user preference. It is to be noted that compared with CSRM, the variation model of the present disclosure has an increase of 0.96% on YOOCHOOSE and an increase of 0.68% on DIGINETICA in terms of Recall@20, and has increases of 3.23% and 3.31% in terms of MRR@20. The larger increase in terms of MRR@20 indicates the intention-guided neighbor detector can also help the target item to return at a higher position.

We compared the performances of the recommendation model of the present disclosure, the variation model of the present disclosure and the best reference models CSRM and SR-GNN on different session lengths. FIGS. 2-5 show the comparison results of two reference models CSRM and SR-GNN and the recommendation model of the present disclosure based on the variation model of the present disclosure in terms of Recall@20 and MRR@20 indexes on two datasets. We can see from FIGS. 2-5 that on the YOOCHOOSE dataset, the recommendation model of the present disclosure is generally higher than other models in terms of Recall@20 and MRR@20 on different session lengths. Along with increase of the session length, we find that all models perform stably in terms of Recall@20 before the length 5, and then show a continuous decrease trend. However, the general expression in terms of MRR@20 shows a decreasing trend. The decrease of the two indexes in a long session may mean that the user may interact with more irrelevant items in a long session occasionally or for curiosity. Interestingly, on the DIGINETICA dataset, all models achieve the best effect in terms of Recall@20 and MRR@20 on length 2, and show a general decreasing trend after that. Especially, the recommendation model of the present disclosure has a more obvious increase in terms of Recall@20 than in terms of MRR@20. In some cases of MRR@20, the recommendation model of the present disclosure performs inferior to SR-GNN. Furthermore, compared with the variation model of the present disclosure, the recommendation model of the present disclosure performs more obviously for a long session in terms of Recall@20 and MRR@20, which indicates that the recommendation model of the present disclosure can more accurately represent the long session by focusing on the latest interests in the current session than the variation model of the present disclosure.

Therefore, in the item recommendation method based on a user intention in a session and a system thereof in the present disclosure, the current session is encoded by use of items of prior time sequence and the last item so as to generate an accurate session representation which is then used to perform initial item prediction as the user intention. Afterwards, the intention-guided neighbor detector is used to locate an accurate neighbor session. Finally, the current session and the neighbor session representations are combined adaptively by the gated mixed layer to generate the final item recommendation, so as to effectively improve the accuracy of item recommendation.

The examples of the present disclosure do not exhaust all possible details nor limit the present disclosure to the specific examples of the present disclosure. Many changes and modifications may be made according to the above descriptions. The specific examples of the present disclosure are used only to explain the principle and the actual application of the present disclosure better, so that those skilled in the art may use the present disclosure well or change the present disclosure for use. The present disclosure is only limited by the claims, and its entire scope of protection and equivalents. 

What is claimed is:
 1. An item recommendation method based on a user intention in a session, configured to predict an item that a user is likely to interact at a next moment from an item set as a target item to be recommended to the user, comprising: obtaining a current session representation by encoding a current session based on a trained recommendation model; obtaining a user intention in the current session according to the current session representation; obtaining a corresponding neighbor session representation by identifying a neighbor session of the current session from a plurality of sessions occurring before the current session according to the user intention; obtaining and recommending the target item to the user according to the current session representation and the neighbor session representation.
 2. The item recommendation method according to claim 1, wherein obtaining the current session representation by encoding the current session based on the trained recommendation model comprises: obtaining an item embedding vector by embedding each item in the current session to one d-dimension vector, and taking an item embedding vector corresponding to the last item in the current session as a current interest of the user in the current session; obtaining a hidden state vector of the item according to the item embedding vector, and taking a hidden state vector corresponding to the item embedding vector corresponding to the last item in the current session as a long-term preference of the user in the current session; obtaining the current session representation by connecting the current interest and the long-term preference.
 3. The item recommendation method according to claim 2, wherein the hidden state vector is obtained by allowing a gate recurrent unit (GRU) to act on the item embedding vector.
 4. The item recommendation method according to claim 1, wherein obtaining the user intention in the current session according to the current session representation comprises: generating a prediction score of each item in the item set as the target item according to the current session representation; sorting items in the item set in a descending order according to the corresponding prediction scores, and selecting a vector formed by a plurality of items ranked top in the item set as the user intention in the current session.
 5. The item recommendation method according to claim 1, wherein obtaining the corresponding neighbor session representation by identifying the neighbor session of the current session from a plurality of sessions occurring before the current session according to the user intention comprises: forming a session memory by collecting session representations of a plurality of sessions occurring before the current session and corresponding target item; forming a to-be-identified neighbor session representation by searching out each session representation corresponding to the target item identical to one of items in the user intention in the session memory according to the user intention; sorting various session representations in the to-be-identified neighbor session representation according to the order of the items in the user intention; forming a candidate neighbor session of the current session by selecting a plurality of session representations ranked top in the sorted to-be-identified neighbor session representation; calculating a similarity between each session in the candidate neighbor session and the current session, and selecting a plurality of sessions ranked top in similarity in the candidate neighbor session as each neighbor session of the current session; calculating a weight sum of various neighbor sessions as the neighbor session representation.
 6. The item recommendation method according to claim 5, wherein the session memory is updated according to a first-in-first-out mechanism.
 7. The item recommendation method according to claim 1, wherein obtaining and recommending the target item to the user according to the current session representation and the neighbor session representation comprises: obtaining a preference of the user by adaptively integrating the current session representation and the neighbor session representation using a gated mixed layer; recommending the target item to the user by obtaining the target item according to the preference.
 8. The item recommendation method according to claim 1, wherein before the current session representation is obtained by encoding the current session based on the trained recommendation model, the method further comprises training the recommendation model using a back propagation algorithm.
 9. The item recommendation method according to claim 1, wherein a parameter of the recommendation model is learned by using a cross entropy function as an optimization target.
 10. An item recommendation system based on a user intention in a session, configured to predict an item that a user is likely to interact at a next moment from an item set as a target item to be recommended to the user, and comprising a session encoder, an intention generator, an intention-guided neighbor detector and a preference integrator, wherein, the session encoder is configured to obtain a current session representation by encoding a current session; the intention generator is configured to generate a user intention in the current session according to the current session representation; the intention-guided neighbor detector is configured to obtain a corresponding neighbor session representation by identifying a neighbor session of the current session from a plurality of sessions occurring before the current session according to the user intention; the preference integrator is configured to obtain a preference of the user by integrating the current session representation and the neighbor session representation, and predict a next item that the user is likely to interact from the item set as the target item to be recommended to the user according to the preference. 